package mymyoux.events
{
	import flash.events.Event;
	/**
	 * MEvent étant Event et lui rajoute la propriété value.
	 * @author Mymyoux
	 * @version 1.0
	 */
	public class MEvent extends Event implements IStaticListenable
	{
		/**
		 * @private
		 */
		protected var _value:String;
		/**
		 * Crée un objet de type MEvent.
		 * @param type Type de l'évènement.
		 * @param value Valeur envoyé à l'évènement.
		 * @param bubbles Determines whether the Event object participates in the bubbling stage of the event flow. The default value is false.
		 * @param cancelable Determines whether the Event object can be canceled. The default values is false.
		 */
		public function MEvent(type:String, value:String, bubbles:Boolean=false, cancelable:Boolean=false)
		{
			super(type, bubbles, cancelable);
			_value=value;
		}
		/**
		 * Valeur de l'évènement.
		 */
		public function get value():String{
			return _value;
		}
		/**
		 * @copy mymyoux.core.IObject#toString()
		 */
		 public override function toString():String{
		 	return "[MEvent type=\""+type+"\" value=\""+_value+"\"]";
		 }
		 /**
		 * @copy IStaticListenable#clone()
		 */
		 public override function clone():Event
		 {
		 	return new MEvent(type,_value,bubbles,cancelable);
		 }
		
	}
}